home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1996 #15 / Monster Media Number 15 (Monster Media)(July 1996).ISO / prog_d / qrep10b.zip / TEXTLIST.PAS < prev   
Pascal/Delphi Source File  |  1996-01-16  |  2KB  |  74 lines

  1. unit Textlist;
  2.  
  3. interface
  4.  
  5. uses
  6.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  7.   Forms, Dialogs, StdCtrls, Quickrep, ExtCtrls;
  8.  
  9. type
  10.   TTextRep = class(TForm)
  11.     Rep: TQuickReport;
  12.     QRBand1: TQRBand;
  13.     QRLabel1: TQRLabel;
  14.     QRBand2: TQRBand;
  15.     QRBand3: TQRBand;
  16.     QRSysData1: TQRSysData;
  17.     QRSysData2: TQRSysData;
  18.     QRSysData3: TQRSysData;
  19.     QRLabel2: TQRLabel;
  20.     procedure RepBeforePrint(var PrintReport: Boolean);
  21.     procedure RepNeedData(var MoreData: Boolean);
  22.     procedure RepAfterPrint(Sender: TObject);
  23.   private
  24.     { Private declarations }
  25.     aFile : Text;
  26.   public
  27.     { Public declarations }
  28.   end;
  29.  
  30. var
  31.   TextRep: TTextRep;
  32.  
  33. implementation
  34.  
  35. {$R *.DFM}
  36.  
  37.  
  38. procedure TTextRep.RepBeforePrint(var PrintReport: Boolean);
  39. var
  40.    aOpenDialog : TOpenDialog;
  41. begin
  42.    aOpenDialog:=TopenDialog.Create(self);
  43.    with aOpenDialog do begin
  44.       Filter:='Pascal files (*.PAS)|*.PAS|Text files (*.TXT)|*.TXT';
  45.       options:=[ofFileMustExist];
  46.       if not execute then PrintReport:=false
  47.       else  begin
  48.          AssignFile(aFile,Filename);
  49.          reset(afile);
  50.          Rep.ReportTitle:=Filename;
  51.       end;
  52.       free;
  53.    end;
  54. end;
  55.  
  56. procedure TTextRep.RepNeedData(var MoreData: Boolean);
  57. var
  58.    Line : String;
  59. begin
  60.    if not eof(aFile) then begin
  61.       readln(aFile,Line);
  62.       qrlabel1.caption:=Line;
  63.       MoreData:=True;
  64.    end
  65.    else MoreData:=False;
  66. end;
  67.  
  68. procedure TTextRep.RepAfterPrint(Sender: TObject);
  69. begin
  70.    CloseFile(aFile);
  71. end;
  72.  
  73. end.
  74.